\subsubsection{Fájllista}
\input{filelist}
\subsubsection{Fordítás és telepítés}
A fordítás megkönnyítésére mellékeltünk egy Windows alatt futtatható batch
fájlt (\emph{fordit.bat}). Futattás előtt győződjünk meg arról, hogy a
JAVA\_HOME környezeti változó a JDK elérési útvonalát tartalmazza. A batch fájl a
forrásfájlokból előállítja a tárgykódot, majd létrehoz egy JAR fájlt,
amit már lehet is indítani.

\subsubsection{Futtatás}
A futtatás alapesetben a következő paranccsal történik:
\begin{verbatim}
  java -jar Graphical.jar <initscript>
\end{verbatim}
Az \emph{initscript} egy induláskor betöltődő pályafelépítési parancsfájl,
aminek formátuma megegyezik a prototípus esetén használt tesztelési fájlokkal. A
futtatás megkönnyítésére szintén mellékeltünk egy batch fájlt
(\emph{futtat.bat}).

\subsubsection{Felhasználói dokumentáció}
A játék felülete alapvetően három panelből áll: a baloldalon található
játéktérből, a tőle jobbra elhelyezkedő menüből és az ablak alján
lévő státuszsorból. A játéktéren követhető nyomon a játék, a menüből
választható a kilépés és az új játék kezdeményezése, a státuszsoron pedig
folyamatosan értesülhetünk a játék során bekövetkező eseményekről (pl.
győzelem, vereség), alapesetben viszont a játékos hátralévő életeinek száma
látszik.

\begin{figure}[h!]
  \centering
      \includegraphics[width=0.75\textwidth]{img/screenshot.pdf}
  \caption{A CarmaDness felhasználói felülete}
\end{figure}

A játékos egy \emph{bankrabló} szerepét tölti be, és az \emph{1.3} jelzésű
kocsit irányítja. A bankrabló, a \emph{város}ban lévő \emph{3.2} jelzésű
\emph{bank}ból próbál meg eljutni a \emph{3.1} jelzésű \emph{rejtekhely}re.

Mindezt egy kis német város, Verkehrsmeldungen am Uml \emph{út}jain teszi.
A város \emph{térkép}e (\hyphenation{út-há-ló-za-ta}úthálózata) adott. Az
úthálózat egysávos, egyirányú utakból áll. Egy útra jellemző
a benne megengedett \emph{maximális sebesség}, kivéve ahol nincs megadva - ott a
városra jellemző általános maximális sebesség érvényes. Minden
\emph{kereszteződés}nél ki vannak táblázva az \emph{elsőbbségi viszonyok},
kivéve, ahol \emph{jelzőlámpa} (aminek két állapota van: zöld és piros)
irányítja a forgalmat. Egyéb eset nem lehetséges.

Menekülés közben az úthálózaton a bankrablón kívül más járművek is
tartózkodnak. Fehér színű járművekkel közlekednek az \emph{1.1} jelzésű
\emph{civil}ek és kék színű járművekkel az \emph{1.2} jelzésű \emph{rendőr}ök
is. A járművek automatikusan az utakon tartják magukat, nem \emph{ütköz}nek más
járművekkel és a közlekedési szabályoknak (elsőbbségi viszonyok, jelzőlámpa,
az adott útszakaszon megengedett maximális sebesség) engedelmeskednek.
A \hyphenation{ke-resz-te-ző-dé-sek-nél}kereszteződéseknél az elsőbbségadásra
kötelezett jármű (ezt piros stop tábla jelzi - ld. \emph{2.2}) várakozik,
ameddig keresztirányú forgalom van, utána tovább indul. A piros lámpához (az ábrán \emph{2.1} jelzéssel szerepel) érkező jármű addig vár, ameddig a
jelzőlámpa zöldre nem vált át. A bankrabló minden közlekedési szabályt
áthághat. Ha útja során a \emph{2.3} jelű \emph{húsvéti nyuszi}val találkozik,
egy rövid időre megnő a mérete, és sebezhetetlenné válik. Ez a tulajdonság előbb-utóbb elmúlik.

A kereszteződésekben a járművek véletlenszerűen választják ki,
hogy a kereszteződésben találkozó utak közül melyiken haladnak tovább,
természetesen az utak irányítását figyelembe véve (azaz nem hajtanak be a
tiltott irányba). A járművek folyamatosan lépnek ki és be a
\emph{városhatár}nál. A civilek haladási\emph{sebesség}üket véletlenszerűen
választják meg, de soha nem lépik túl a megengedett maximális sebességet.
A rendőr végig a megengedett maximális sebességgel közlekedik.
Amennyiben egy gyorsabban haladó jármű utólér egy lassabban haladót, lelassít,
hogy elkerülje az ütközést. Előzésre az egysávos utak miatt nincsen lehetőség.

A bankrablónak úgy kell közlekednie, hogy a többi járművel ne ütközzön. Civillel
történő ütközés során egyet veszít \emph{élet}eiből (melyeket a \emph{4.2} jelű
státuszsoron folyamatosan nyomon lehet követni), míg a rendőrrel történő
ütközéskor végleg elveszti a lehetőséget a folytatásra, ez esetben a játék \emph{kudarc}cal végződik. A játéknak akkor is vége szakad, ha a bankrabló
városhatárnál elhagyja a várost, vagy életeinek száma nullára csökken. Ha sikerül
eljutnia a rendőrrel történő ütközés nélkül a rejtekhelyre úgy, hogy közben maradt
még élete, a játék \emph{siker}rel végződik.
